The present invention relates to method and apparatus for coding picture signals and, more particularly, to method and apparatus for high efficiently coding picture signals including a moving picture by using the correlation between temporally neighboring frames.
With respect to the high efficiency coding of picture signals using the correlation between temporally neighboring frames, a change amount of picture signals between temporally neighboring frames, that is, predictive error is coded. Change in the picture occurs mostly by motion such as translation, rotation, zoom, transformation, or the like of an image. Data compression techniques using motion compensation in which the amount of motion, that is, a motion vector is detected and a coding data amount of a picture to be transferred or stored up is reduced by using the motion vector are known.
One of the data compression techniques by using the motion compensation is adopted in the international standards H.263, MPEG1, MPEG2, and the like, in which a current picture (current frame) to be coded is divided into a number of blocks, each block is compared with a picture of a previous frame (that is, a reference picture), and a motion vector of the current the block from the reference picture is obtained by block matching. The difference between the motion compensated picture of the previous frame and the current frame, that is, a predictive error signal is coded by using the obtained motion vector. The predictive error signals is subjected to orthogonal transformation such as DCT on the block unit basis, transform coefficients obtained by the orthogonal transformation are quantized, and the quantized signals are coded using the variable length code. Some codes obtained by variable length coding and Some codes obtained by coding the motion vector are multiplexed, and the multiplexed codes are transferred or stored up.
The international standards H.261, MPEG1, and MPEG2 are described in, for example, xe2x80x9cLatest MPEG textbookxe2x80x9d supervised by Hiroshi Fujiwara (1994.8). In the motion compensation performed by the H.263 coding, a picture frame is divided into sub blocks each consisting of (16 pixelsxc3x9716 pixels), the sub block is further divided into four blocks each consisting of (8 pixelsxc3x978 pixels), the motion vector of the sub blocks or the four small blocks is/are obtained, and picture data and the motion vector of each block are coded.
According to another data compression technique using the motion compensation, a global motion such as rotation, zoom, transformation, and the like in a whole picture occurring by panning of a camera or a zooming operation for sports broadcast or the like is detected and is used for the image coding. The above technique is called a global motion compensation method. There are some methods of global motion compensation (for example, xe2x80x9cGlobal motion compensation method for video codingxe2x80x9d, by Kamikura et al., The Transaction of the Institute of Electronics; Information and Communication Engineers, Vol. J76-B-1, No. 12, pp944-952, refer to hei5-12). For example, as will be described hereinlater with reference to FIG. 5, generally, motion vectors with respect to pixels at four corners of a picture are obtained and transferred. When the whole original picture 501 is used as one area (patch) 503, and the motion and transformation from the current frame picture 501 to a reference picture 502 is compensated by using the area (patch) 503, the reference picture 502 is transformed as shown by 508. By the motion compensation, grid points 504, 505, 506, and 507 are moved to grid points 509, 510, 511, and 512, respectively, and each grid point holds the motion vector accompanying the motion amount. Consequently, when the four motion vectors are transferred to the decoding side, the global motion compensated picture which is commonly used on both of the coding and decoding sides can be formed. In a method of forming the global motion compensated picture, a high speed algorithm as disclosed in Official Gazette of Japanese Patent Application Laid-Open No. 8-60572 also exists.
The four motion vectors are not necessarily specified to the pixel positions if there is some agreement between the coding and decoding sides. When the motion vector of a pixel located at the end of the global motion compensated picture exceeds a search range, the global motion compensated predicting picture cannot be completely reformed on the decoding side. In the case where the motion vector of the picture is located out of the picture, the pixel at the corner of the picture is substituted for it.
The global motion compensation is effective as long as the motion in the whole picture is uniformly the same. However, when an area of different motion exists in the picture, the global motion compensation can correspond to the motion of only one of patterns. Consequently, in order to compensate a spatial motion amount existing between the original picture and a global motion compensated picture, a method of performing a local motion compensation by using the global motion compensated picture as a reference picture is also used. Further, in order to correspond to a stationary area or a conventional simple translation as well, there is also an adapting method on the block unit basis by performing the local motion compensation to a picture which is not global motion compensated and to a global motion compensated picture, respectively.
In the above-mentioned picture coding methods executing the motion compensation, in order to easily detect the motion vector which can be reduced the number of coding bits, evaluation is performed by subtracting a predetermined fixed value from a fundamental appreciation value used for the motion estimation (value for evaluating the similarity between a block to be coded and a reference picture block) only in the case of a specific motion vector. This technique of reducing the amount of the motion vector information by subtracting the predetermined fixed value from the fundamental evaluation value used for the motion estimation is effective when the ratio of an amount of the motion vector is large for the ratio of an amount of the whole coding information. However, when the technique is used for a case where the ratio of the amount of the motion vector information is much smaller than the ratio of the amount of the coding information for the error signals, there is the possibility that the increased amount of the coding information of the signals becomes larger than the reduced amount of the coding information of the motion vector and the coding efficiency deteriorates as a result. It also involves deterioration of the performance of the motion compensation.
It is a main object of the invention to realize a coding method and apparatus for the image coding accompanying motion compensation with high coding efficiency.
It is another object of the invention to reduce the amount of coding information of a motion vector while suppressing increase in the amount of coding information of an error signal and deterioration in performance of motion compensation in coding of picture signals accompanying local motion compensation and global motion compensation.
In order to achieve the objects, in the image coding method accompanying the motion compensation according to the invention, the error signal as a difference between a picture of a current frame and a motion compensated reference picture (previous frame) is subjected to orthogonal transformation such as DCT, and a subtracting value (positive integer) which is subtracted from a fundamental evaluation value of block matching for obtaining a motion vector is controlled by a quantizing parameter for determining a quantizing step width when the orthogonal transform coefficients are quantized. A plurality of values are used as the subtracting values to be subtracted in accordance with the value of a quantizing parameter which becomes small as an average quantizing step width is narrowed. The subtracting value corresponding to the larger quantizing parameter is set to be larger than the subtracting value corresponding to the smaller quantizing parameter.
A image coding apparatus accompanying motion compensation according to the invention has: a local motion compensation processing part for receiving a current frame to be coded and the previous frame (reference picture), obtaining a motion vector of a picture of every block obtained by dividing the current frame into a plurality of blocks, and forming a block predicted picture which is motion compensated by the motion vector; a transforming part for orthogonal transformation a predictive error signal as a difference between the current frame block and the predicted picture block image and adding these transform coefficients to a quantizer controlled by a quantizing parameter; and a coder for coding the motion vector and quantized transform coefficients as an output of the quantizer. In the apparatus, means for controlling a motion estimation part for obtaining a motion vector in the local motion compensation processing part with the quantizing parameter is provided. Especially, for the control of the local motion compensation processing part by the quantizing parameter, a transforming part for transforming the quantizing parameter to a first integer n is provided. When a candidate motion vector is zero (that is, the horizontal and vertical components of the candidate motion vector are zero), the motion estimation part uses a value obtained by subtracting the first integer n from the sum of absolute-value or the sum of square-value of the predictive error signals (simply called a fundamental evaluation value) in a block as an evaluation value. The quantizing parameter is set so that the smaller the parameter is, the narrower the quantizing step width is. A plurality of values are used as the quantizing parameters. With respect to two values as the first integer n allocated to two different quantizing parameters, the first integer n allocated to the smaller quantizing parameter is smaller than the first integer n allocated to the larger quantizing parameter.
When the candidate motion vector in the motion compensation is not zero, a second constant m can be either subtracted or not subtracted from the sum of absolute-value or the sum of square-value of the predictive error signals (fundamental evaluation value). According to a preferred embodiment, when the integer m of the second constant is subtracted, the integer m of the second constant is set to be smaller than the first integer n.
As a preferred embodiment of the invention, the local motion compensation of the above-mentioned invention are performed to a global motion compensated picture which is regarded as a new reference picture, and coding process is performed.
According to the invention, attention is paid to the fact that the quantizing parameter (although it is called as xe2x80x9cQuentxe2x80x9d in the description of the international standard H.263, abbreviated as xe2x80x9cQPxe2x80x9d hereinbelow) when DCT coefficients are quantized is concerned with a amount of coding information for the predictive error signal, that is, as the quantizing parameter QP becomes small, the quantizing step width is narrowed, so that the amount of the coding information increases. For example, in a coding system of the H.263, as will be described with reference to the expression (1) in an embodiment, the smaller the quantizing parameter is, the narrower the quantizing step width is. Therefore, it will be obviously understood that the larger the quantizing parameter is, the smaller the amount of information required for coding the DCT coefficients is. Accordingly, it is also obviously understood that as the quantizing parameter becomes larger, the coding amount of the motion vector information for the whole coding amount increases. According to the invention, the subtracting value for the motion 0 vector at the time of the motion estimation, the evaluation value of the INTER mode for the INTER4V mode, and the like is set to be small when the quantizing parameter is small and is set to be large when the quantizing parameter is large, thereby realizing the reduction in the amount of coding information of the DCT coefficients without deteriorating the performance of the motion compensation.